package com.bwda.dsrs.filecenter.mapper.dsrs;

import com.bwda.dsrs.filecenter.domain.condition.executionhistory.ExecutionHistoryCondition;
import com.bwda.dsrs.filecenter.domain.po.executionhistory.ExecutionHistoryPo;
import feign.Param;

import java.util.List;
import java.util.Map;

/**
 * @author Administrator
 */
public interface ExecutionHistoryMapper extends BaseMapper<ExecutionHistoryPo, ExecutionHistoryCondition> {
    /**
     * 查询是否已经有正在执行的任务数量
     *
     * @param taskIds 任务IDS
     * @return
     */
    int queryRuningTaskCountByTaskIds(@Param("taskIds") Long[] taskIds);

    /**
     * 根据ids删除任务历史
     *
     * @param auditHistoryIds 历史记录IDS
     */
    void deleteByIds(@Param("auditHistoryIds") Long[] auditHistoryIds);

    /**
     * 根据id查询稽核管理历史任务
     *
     * @param auditHistoryIds 历史记录IDS
     * @return
     */
    List<ExecutionHistoryPo> queryResAuditTaskHistoryById(@Param("auditHistoryIds") Long[] auditHistoryIds);

    /**
     * 更新进度任务
     *
     * @param auditHistoryId 历史ID
     * @param speedProgress  执行进度
     * @param exeDuration    执行时长
     * @return
     */
    int updateProcess(Map<String, Object> param);
}